<?php
/**
 *用户相关常量数据
 * @author dinglin
 *
 */
class Const_User {

    /* 用户类别 */
    const USER_TYPE_PRACTICE_STAFF  = 3 ;//实习员工
    const USER_TYPE_TRY_STAFF       = 1 ;//试用期员工
    const USER_TYPE_FORMAL_STAFF    = 2 ;//正式员工

    const USER_TYPE_PART_TIME_STAFF = 4 ;//兼职人员
    const USER_TYPE_TMPORARY_STAFF  = 5 ;//临时工

    /* 性别 */
    const USER_SEX_MAN = 1;//男
    const USER_SEX_WOMAN = 2;//女

    /* 护照类型 */
    const USER_IDENTITY_TYPE_IDENTITY = 1;//身份证
    const USER_IDENTITY_TYPE_PASSPORT = 2;//护照

    /* 学历 */
    const USER_DEGREE_SENIOR_HIGH = 1;//高中及以下
    const USER_DEGREE_SPICIALTY   = 2;//专科
    const USER_DEGREE_UNIVERSITY  = 3;//大学
    const USER_DEGREE_MASTER      = 4;//硕士
    const USER_DEGREE_DR          = 5;//博士

    /*婚姻*/
    const USER_MARITAL_NO = 1;//未婚
    const USER_MARITAL_YES= 2;//已婚

    /*生育*/
    const USER_FERTILITY_NO = 1;//未生育
    const USER_FERTILITY_YES= 2;//已生育

    /*在职*/
    const USER_WORK_NO = 2;//离职
    const USER_WORK_YES= 1;//在职

    /*离职类型*/
    const USER_LEAVING_TYPE_ACTIVE  = 1;//主动
    const USER_LEAVING_TYPE_PASSIVE = 2;//被动
    const USER_LEAVING_TYPE_NO_REPORT=3;//为来报到

    /*新员工培训*/
    const USER_TRAIN_NO  = 1;//未培训
    const USER_TRAIN_YES = 2;//已培训

    /**
     * 招聘人员职级类型 P
     */
    const RECRUIT_USER_TYPE_P = 1;
    /**
     * 招聘人员职级类型 M
     */
    const RECRUIT_USER_TYPE_M = 2;
    /**
     * 获取lumesse到hroa的用户类型对于关系
     * @return array
     */
    public static function get_lumesse_to_hroa_user_type(){
        return array(
                'Regular'=>self::USER_TYPE_FORMAL_STAFF,  //正式
                'Internship'=>self::USER_TYPE_PRACTICE_STAFF,  //适用
                'Part Time'=>self::USER_TYPE_PART_TIME_STAFF  //兼职
        );
    }
    /**
     * 获取hroa到lumesse的用户类型对于关系
     * @return array
     */
    public static function get_hroa_to_lumesse_user_type(){
        return array(
                2=>'Regular',  //正式
                3=>'Internship',  //适用
                4=>'Part Time',  //兼职
        );
    }
    public static function get_all_degrees(){
        return array(
                1=>'高中及以下',
                2=>'专科',
                3=>'本科',
                4=>'硕士',
                5=>'博士',
                );
    }
    /**
     * 返回所有用户状态
     */
    public static function get_all_user_type(){
        return array(
                3 => array('type_id'=>3,'type_name'=>'实习员工'),
                1 => array('type_id'=>1,'type_name'=>'试用员工'),
                2 => array('type_id'=>2,'type_name'=>'正式员工'),
                4 => array('type_id'=>4,'type_name'=>'兼职员工'),
                5 => array('type_id'=>5,'type_name'=>'临时员工'),
                );
    }
    /**
     * 获取P级线
     */
    public static function get_p_degree(){
        return array(
                99 => array('id'=>99,'degree'=>'P0'),
                1 => array('id'=>1,'degree'=>'P1'),
                2 => array('id'=>2,'degree'=>'P2'),
                3 => array('id'=>3,'degree'=>'P3'),
                4 => array('id'=>4,'degree'=>'P4'),
                5 => array('id'=>5,'degree'=>'P5'),
                6 => array('id'=>6,'degree'=>'P6'),
                7 => array('id'=>7,'degree'=>'P7'),
                8 => array('id'=>8,'degree'=>'P8'),
                9 => array('id'=>9,'degree'=>'P9'),
                10 => array('id'=>10,'degree'=>'P10'),
                11 => array('id'=>11,'degree'=>'P11'),
                12 => array('id'=>12,'degree'=>'P12'),
                13 => array('id'=>13,'degree'=>'P13')
                );
    }
    /**
     * 获取M级线
     */
    public static function get_m_degree(){
        return array(
                    99 => array('id'=>99,'degree'=>'M0'),
                    1 => array('id'=>1,'degree'=>'M1'),
                    2 => array('id'=>2,'degree'=>'M2'),
                    3 => array('id'=>3,'degree'=>'M3'),
                    4 => array('id'=>4,'degree'=>'M4'),
                    5 => array('id'=>5,'degree'=>'M5'),
                    6 => array('id'=>6,'degree'=>'M6'),
                    7 => array('id'=>7,'degree'=>'M7'),
                    8 => array('id'=>8,'degree'=>'M8'),
                    9 => array('id'=>9,'degree'=>'M9'),
                    10 => array('id'=>10,'degree'=>'M10'),
                    11 => array('id'=>11,'degree'=>'M11'),
                    12 => array('id'=>12,'degree'=>'M12'),
            );
    }
    /**
     *
     * @param unknown_type $level
     * @param unknown_type $type
     * @return string
     */
    public static function get_user_degree($level,$type='P'){
        $res = '';
        $type = strtoupper($type);
        if(empty($level) || !in_array($type,array('P','M'))){
            return $res;
        }
        $level = $level==99 ? 0 : $level;
        $res = $type.$level;
        return $res;
    }
    /**
     * 离职类型
     */
    public static function get_dimission_reasion(){
        return array(
                self::USER_LEAVING_TYPE_ACTIVE => '主动离职',
                self::USER_LEAVING_TYPE_PASSIVE => '被动离职',
                self::USER_LEAVING_TYPE_NO_REPORT => '未来报到',
                );
    }
    /**
     * 获取主动离职原因
     */
    public static function get_active_reason(){
        return array(
                1=>'转行',
                2=>'工作压力',
                3=>'晋升空间',
                4=>'薪资福利',
                5=>'回老家',
                6=>'家庭原因',
                7=>'不适应现岗位',
                8=>'身体素质',
                9=>'公司文化',
                10=>'自主创业',
                11=>'同事关系',
                12=>'工作环境',
                13=>'工作时长',
                14=>'其它',
        );
    }
    /**
     * 获取被动离职原因
     */
    public static function get_passive_reason(){
        return array(
                100=>'工作能力',
                101=>'架构调整',
                102=>'与企业文化不匹配',
                103=>'违反公司规章制度'
             );
    }
}